import type { ComponentPropsWithoutRef, FC } from 'react'
import { useId } from 'react'

type Props = ComponentPropsWithoutRef<'svg'>

export const QAAgent: FC<Props> = (props) => {
  const clipPathId = useId()

  return (
    <svg
      role="img"
      aria-label="QA Agent Avatar"
      width={24}
      height={24}
      viewBox="0 0 24 24"
      fill="none"
      {...props}
    >
      <g clipPath={`url(#${clipPathId})`}>
        <path
          d="M0 12C0 5.37258 5.37258 0 12 0C18.6274 0 24 5.37258 24 12C24 18.6274 18.6274 24 12 24C5.37258 24 0 18.6274 0 12Z"
          fill="#FFDD66"
        />
        <rect
          x="5.57153"
          y="11.5715"
          width="12.8571"
          height="7.28572"
          fill="black"
        />
        <path
          d="M23.6714 22.0124C23.2986 21.2842 22.3299 21.1654 21.9383 20.4852C21.743 20.1522 21.6997 19.6576 21.6725 19.2354C21.5185 16.9213 20.9274 14.6421 19.883 12.5708C19.5828 11.9292 19.2914 11.2365 19.4564 10.5282C19.5734 9.98096 19.871 9.43161 19.871 8.87445C19.8767 8.02594 19.0418 7.65276 18.2496 7.7226C17.7828 7.75231 17.3322 7.94723 16.9306 8.17656C15.4335 9.16789 14.7202 8.43821 13.0848 8.24432C12.0592 8.12184 11.0274 8.16405 10.0154 8.40954C9.48489 8.53254 8.88073 8.72851 8.35595 8.68578C7.67189 8.63522 7.19619 8.18073 6.54608 7.91596C6.07455 7.71947 5.52836 7.65171 5.03385 7.78566C4.47721 7.92222 4.07096 8.39338 4.13362 8.97921C4.17435 9.63697 4.60201 10.2942 4.59314 10.9738C4.58687 11.5352 4.35241 12.0689 4.11378 12.5812C3.8694 13.0941 3.61562 13.6127 3.41824 14.1422C2.78431 15.8804 2.40208 17.7005 2.30391 19.5518C2.18694 21.6115 0.381777 20.7641 0.0522831 22.8395C-0.48817 26.3545 3.28874 25.1948 5.50538 23.552C5.80772 23.3628 6.16228 23.0928 6.48185 23.2346C7.29332 23.7177 7.56119 25.9354 8.75646 26.1345C10.24 26.2857 10.854 24.1686 11.9501 24.0716C12.8555 24.0586 13.4122 25.347 14.1532 25.803C14.8529 26.3055 15.5719 26.2768 16.0795 25.5424C16.4356 25.0671 16.7071 24.389 16.9891 23.8699C17.2935 23.3174 17.5442 23.024 18.0773 23.3013C18.4214 23.478 18.7901 23.7652 19.1379 23.9788C20.7597 24.9493 22.7874 25.7442 23.7184 24.5584C24.1335 23.9106 24.0646 22.7415 23.6756 22.0217L23.6704 22.0129L23.6714 22.0124ZM7.01082 15.0423C7.00037 14.5279 7.4437 14.0833 7.94604 13.9947C8.87395 13.7988 9.34443 14.7119 8.86768 15.4536C8.33506 16.2979 7.04685 16.0863 7.01082 15.0522V15.0423ZM16.9907 15.0528C16.9546 16.0868 15.6664 16.2984 15.1338 15.4541C14.6571 14.7124 15.1275 13.7993 16.0555 13.9952C16.5578 14.0839 17.0011 14.5279 16.9907 15.0429V15.0528Z"
          fill="#F75049"
        />
        <path
          d="M19.8288 4.26378C20.3925 4.58923 20.5856 5.31003 20.2602 5.87374C20.209 5.96238 20.1467 6.04058 20.0781 6.11032C21.1718 7.28018 21.4011 9.04125 20.5589 10.5L20.5053 10.5928L20.5977 10.6462C20.9564 10.8533 21.0794 11.312 20.8722 11.6707L20.2294 12.7842C20.0223 13.1429 19.5636 13.2658 19.2049 13.0587L12.5241 9.20155C12.1654 8.99444 12.0425 8.53575 12.2496 8.17703L12.8924 7.06357C13.0995 6.70485 13.5582 6.58194 13.917 6.78905L14.0097 6.84262L14.0633 6.74983C14.9055 5.29125 16.5447 4.60893 18.1046 4.97088C18.1307 4.87665 18.1677 4.78378 18.2188 4.69516C18.5443 4.13146 19.2651 3.93832 19.8288 4.26378Z"
          fill="#1DED83"
        />
        <path
          d="M13.8492 7.12104L14.0634 6.74988C14.9762 5.16902 16.8254 4.4994 18.4949 5.0836L18.5253 5.0963C18.6727 5.16539 18.7468 5.33611 18.6919 5.49314C18.6333 5.66069 18.4498 5.74919 18.2822 5.69055L18.1529 5.64829C16.8107 5.24361 15.3552 5.79834 14.6202 7.07131L14.4059 7.44246C14.3171 7.5962 14.1205 7.64888 13.9668 7.56012C13.8131 7.47136 13.7604 7.27477 13.8492 7.12104Z"
          fill="#007040"
        />
        <path
          d="M19.7034 5.55238C19.8514 5.29615 19.7636 4.96851 19.5073 4.82058C19.2511 4.67264 18.9235 4.76043 18.7756 5.01666C18.6276 5.27289 18.7154 5.60053 18.9716 5.74846C19.2279 5.89639 19.5555 5.8086 19.7034 5.55238ZM20.2602 5.8738C19.9347 6.43751 19.2139 6.63065 18.6502 6.30519C18.0865 5.97974 17.8934 5.25894 18.2188 4.69523C18.5443 4.13153 19.2651 3.93839 19.8288 4.26385C20.3925 4.5893 20.5856 5.3101 20.2602 5.8738Z"
          fill="#007040"
        />
        <path
          d="M19.7876 10.5496L20.0019 10.1784C20.7368 8.90544 20.4893 7.36748 19.4679 6.40744L19.3663 6.3164L19.3427 6.29361C19.2306 6.17541 19.2238 5.98901 19.3324 5.86285C19.441 5.73673 19.6262 5.71572 19.7598 5.809L19.7859 5.82894L19.9087 5.93944C21.1468 7.10338 21.4428 8.96836 20.5586 10.4998L20.3443 10.871C20.2556 11.0247 20.059 11.0773 19.9053 10.9886C19.7515 10.8999 19.6989 10.7033 19.7876 10.5496Z"
          fill="#007040"
        />
        <path
          d="M20.3157 11.3493C20.3452 11.2981 20.3277 11.2325 20.2764 11.2029L13.5957 7.34579C13.5444 7.31621 13.4789 7.33376 13.4493 7.38501L12.8065 8.49847C12.7769 8.54972 12.7944 8.61524 12.8457 8.64483L19.5264 12.502C19.5777 12.5316 19.6432 12.514 19.6728 12.4628L20.3157 11.3493ZM20.2295 12.7842C20.0224 13.1429 19.5637 13.2658 19.205 13.0587L12.5242 9.20156C12.1655 8.99446 12.0426 8.53576 12.2497 8.17704L12.8926 7.06358C13.0997 6.70486 13.5584 6.58196 13.9171 6.78906L20.5979 10.6462C20.9566 10.8533 21.0795 11.312 20.8724 11.6707L20.2295 12.7842Z"
          fill="#007040"
        />
        <path
          d="M13.5201 9.40537L14.5915 7.54961C14.6802 7.39587 14.8768 7.34319 15.0306 7.43195C15.1843 7.52071 15.237 7.7173 15.1482 7.87103L14.0768 9.7268C13.988 9.88054 13.7914 9.93321 13.6377 9.84445C13.484 9.75569 13.4313 9.55911 13.5201 9.40537Z"
          fill="#007040"
        />
        <path
          d="M15.0047 10.2626L16.0761 8.40678C16.1649 8.25305 16.3614 8.20037 16.5152 8.28913C16.6689 8.37789 16.7216 8.57447 16.6328 8.72821L15.5614 10.584C15.4726 10.7377 15.2761 10.7904 15.1223 10.7016C14.9686 10.6129 14.9159 10.4163 15.0047 10.2626Z"
          fill="#007040"
        />
        <path
          d="M16.4893 11.1197L17.5607 9.26396C17.6495 9.11022 17.8461 9.05755 17.9998 9.14631C18.1535 9.23507 18.2062 9.43165 18.1175 9.58539L17.046 11.4412C16.9573 11.5949 16.7607 11.6476 16.6069 11.5588C16.4532 11.47 16.4005 11.2735 16.4893 11.1197Z"
          fill="#007040"
        />
        <path
          d="M17.9739 11.9767L19.0453 10.1209C19.1341 9.96716 19.3307 9.91448 19.4844 10.0032C19.6382 10.092 19.6908 10.2886 19.6021 10.4423L18.5306 12.2981C18.4419 12.4518 18.2453 12.5045 18.0916 12.4157C17.9378 12.327 17.8852 12.1304 17.9739 11.9767Z"
          fill="#007040"
        />
      </g>
      <defs>
        <clipPath id={clipPathId}>
          <path
            d="M0 12C0 5.37258 5.37258 0 12 0C18.6274 0 24 5.37258 24 12C24 18.6274 18.6274 24 12 24C5.37258 24 0 18.6274 0 12Z"
            fill="white"
          />
        </clipPath>
      </defs>
    </svg>
  )
}
